iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 18
0
Security

資安動手做系列 第 18

18. Security Engineering

  • 分享至 

  • xImage
  •  

參考書:職業駭客的修練-機械碼與底層的把玩藝術
https://ithelp.ithome.com.tw/upload/images/20181024/2007775294Zglwh0xa.jpg

計算機架構中CPU與記憶體的關係,參照wiki 介紹
https://computersciencewiki.org/index.php/Architecture_of_the_central_processing_unit_(CPU)
https://ithelp.ithome.com.tw/upload/images/20181024/20077752Rj6IQqz93B.png

有心人士可以去讀取或修改記憶體內的數值來做到想要的事,譬如緩衝區溢位(buffer overflow)
https://en.wikipedia.org/wiki/Buffer_overflow

童年的回憶用遊戲修改大師修改數字
https://ithelp.ithome.com.tw/upload/images/20181024/20077752e214YFfiZ5.jpg

實作模擬一下
加法運算,總數是25,這裡來修改數字影響結果。

#include <stdio.h>
#include<stdlib.h>

int main() {
	int number1 = 10;
	int number2 = 15;
	printf("Sum is %d\n", number1 + number2);
	system("pause");
	return 0;
}

選number1那行放中斷點再執行,進到偵錯模式,number有10跟15,轉換成16進位0A跟0F
https://ithelp.ithome.com.tw/upload/images/20181024/20077752RdtenCuHbC.jpg
https://ithelp.ithome.com.tw/upload/images/20181024/200777527gfoJ3o0Fi.jpg
number1前面的記憶體位置為003C178E,搜尋後找到0a,右鍵編輯成11(就是十進位的17
https://ithelp.ithome.com.tw/upload/images/20181024/20077752fGk2PJDzRA.jpg
點繼續讓程式繼續跑完,結果變成32 (17+15),而不是原先25 (10+15)
https://ithelp.ithome.com.tw/upload/images/20181024/20077752BbmPTbaicC.jpg

TCP(Trusted Computing Base)
來源:https://www.youtube.com/watch?v=l5we5EOQ-YY
https://ithelp.ithome.com.tw/upload/images/20181024/20077752t1r78w05PW.jpg

gipi的學習筆記-新手必讀-中斷點的使用
https://dotblogs.com.tw/jimmyyu/2009/06/02/8648


上一篇
17. Asset Security
下一篇
19. Security Engineering-State machine model
系列文
資安動手做34
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言